Walkthrough: Data Mapping

The following is an example for creating a dynamic distribution list based on data mapping, which will be distributed via the Bulletin Board. Click here to learn about file mapping.

In this example, the data source contains a distribution table and a security table. The distribution table lists 3 user ID's, along with the corresponding user and email:

The security table indicates which countries each userID can see:

In the Data Model component, the distribution and security tables were set. Because the Country hierarchy appears in the security hierarchy, it was automatically hidden from the customers table (green highlight below); be sure to enable the Country hierarchy from the customers table so that it can be added to queries.

Step 1

In Discover, build a grid showing Sales and Net Profit by Promotion Type. Add the grid to a new publication, and add the Country hierarchy as a new slicer. Save the publication and configure the schedule.

Step 2

Under Selections, make the required slicer selections. A difference copy of the publication will be generated for each specified slice or slice combination.

Step 3

Under Distribution, choose Bulletin Board and make the following selections:

  1. Choose Use Dynamic List.
  2. Choose whether to distribute to roles or users.
  3. Select the slicer that should be used to render the publication dynamically.
  4. Select Data Mapping as the mapping method.

Step 4

Under Map By, find the distribution dimension and select the required distribution hierarchy.

Step 5

Open the PQL Editor to review the expression, or make changes to it. By default, the hierarchy given at Step 3 will appear in the PQL Editor (red arrow below); you can click apply to distribute to the given hierarchy, or you can continue to edit the expression before applying it.

In this example, we see that the userID hierarchy contains 3 users; their user names are listed in User hierarchy, and their emails in the Email hierarchy.

Step 6

Go to the Publication Feed to download the publication(s); in this example, we see that Ruby was sent 4 copies of the publication, each copy rendered according to a member element to which this user was designated: